package com.csxy.six.exception;

import com.csxy.six.R;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.ResponseBody;

@ControllerAdvice
@ResponseBody // 添加此注解确保返回JSON响应
public class GlobalExceptionHandler {

    @ExceptionHandler(Exception.class)
    public R error(Exception e) {
        e.printStackTrace();
        return R.error().message("执行了全局异常处理: " + e.getMessage());
    }

    @ExceptionHandler(MyException.class)
    public R error(MyException e) {
        e.printStackTrace();
        // 使用 e.getCode() 和 e.getMsg() 获取异常信息
        return R.error()
                .code(e.getCode())
                .message(e.getMsg()); // 使用 getMsg() 而不是 getMessage()
    }
}